home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1997 April / EnigmA AMIGA RUN 17 (1997)(G.R. Edizioni)(IT)[!][issue 1997-04][EAR-CD].iso / EARCD / comm / ums / newsbreaker05a.lha / Reader / NewsBreaker / experimental / Doc / ReadArgs.Hinweise.txt < prev   
Internet Message Format  |  1996-12-22  |  2KB

  1. From: Michael Flad,BL.maus
  2. To: Stefan Müller
  3. Receive-Date: Sonntag, 22-Dez-96  09:55:14
  4. Creation-Date: Dienstag, 17-Dez-96  20:30:00
  5. Message-ID: 199612172030.p42165@bl.maus.de
  6. Date: 17.12.1996 20:30
  7. References: 199612151225.p33253@mk2.maus.de
  8. Subject: ReadArgs.
  9. Attributes: MAUS_STAT "Nicht_gelesen: 19.12.1996 19:02"
  10. UserFlags: WriteAccess ReadAccess ViewAccess
  11. GlobalFlags: Exported
  12.  
  13. Hi,
  14.  
  15. SM> Bei ReadArgs() hast Du auch nach jedem Mal den Buffer zurückgesetzt?
  16. SM> Steht in den Autodocs als Fehlerquelle. 
  17.  
  18. natürlich ... aber ich hab den Fehler gefunden, ist echt
  19. fast unglaublich, vor allem, daß es bisher so selten Probs
  20. damit gab ;)
  21.  
  22. Ich mach mit dem ganzen eine ScriptSprache und hab dazu
  23. einmal ein Template in dem alle Befehle selbst stehen, wenn
  24. ich dann also ne Befehlszeile Parse, dann wird der
  25. entsprechende Befehl ja gefunden (ist für ein Adventure also
  26. sowas wie GETITEM/K). Wenn ich dann den Befehl rausgefunden
  27. hab (erkennbar daran, welcher Pointer des übergebenen Array
  28. nicht mehr auf meinem Default Wert steht) parse ich den
  29. nochmal mit seiner gesamten Syntax (z.B.
  30. GETITEM/K,ITEMNAME/K) und mein großer Fehler war, zu
  31. Glauben, daß ReadArgs nur Fehler zurückliefert, wenn z.B.
  32. bei einem /K das zusätzliche Keyword das angegeben werden
  33. müssten z.B. eben GETITEM=Flasche fehlt, ich dachte nicht,
  34. daß es auch fehlschlägt, wenn nicht der komplette zu
  35. parsende String aufgelöst werden kann (das konnte bei mir ja
  36. nieee der Fall sein). Leider hat ReadArgs natürlich gar
  37. nichts zurückgesetzt und die ganze Sache hat fast
  38. anstandslos funktioniert, obwohl ich auf Speicherbereiche
  39. die von ReadArgs bereits wieder freigegeben wurden,
  40. zugegriffen habe, nur meine DebugPrintfs haben halt evtl.
  41. zufällig gerade den Bereich überschrieben ;)
  42.  
  43. Naja, jetzt hab ich das Prob gelöst, in dem ich einfach
  44. jeden Befehl mit der kompletten Syntax abparse, muß ich halt
  45. für jeden Befehl jedesmal die komplette Syntax abchecken,
  46. aber hauptsache es geht.
  47.  
  48.    Bye
  49.  
  50.      Michael
  51.  
  52. --------------------------------------
  53.  
  54.